package jmine.tec.persist.schema.api;

import javax.persistence.GenerationType;

/**
 * Interface que deve ser implementada pelos elementos que devem representar colunas no sistema.
 * 
 * @author lundberg
 */
public interface SchemaColumn extends SchemaElement {

    /**
     * @return nome da coluna
     */
    String getName();

    /**
     * @return sql type
     */
    int getCode();

    /**
     * @return length
     */
    int getLength();

    /**
     * @return precision
     */
    int getPrecision();

    /**
     * @return scale
     */
    int getScale();

    /**
     * @return GenerationType
     */
    GenerationType getGenerationStrategy();
}
